package com.example.ang.tripapp.utils;

import android.content.Context;
import android.util.DisplayMetrics;

/**
 * ***********************************************************
 * author: andy
 * time：15/12/1
 * name: sp px dp 相互转换的工具类
 * step:
 * 1， dp=px/density;
 * 2， sp=px/scaledDensity;
 * *************************************************************
 */
public class DimensionUtils {

    /**
     * px 转 dp
     *
     * @param context
     * @param pxValue
     * @return
     */
    public static float px2dp(Context context, float pxValue) {
        DisplayMetrics displayMetrics = context.getResources().getDisplayMetrics();
//        DisplayMetrics displayMetrics=new DisplayMetrics();
        return pxValue / displayMetrics.density;
    }

    /**
     * dp 转 px
     *
     * @param context
     * @param dpValue
     * @return
     */
    public static float dp2px(Context context, float dpValue) {
        DisplayMetrics displayMetrics = context.getResources().getDisplayMetrics();
        return dpValue * displayMetrics.density;
    }

    /**
     * px 转 sp
     *
     * @param context
     * @param pxValue
     * @return
     */
    public static float px2sp(Context context, float pxValue) {
        DisplayMetrics displayMetrics = context.getResources().getDisplayMetrics();
        return pxValue / displayMetrics.scaledDensity;
    }

    /**
     * sp转px
     *
     * @param context
     * @param spValue
     * @return
     */
    public static float sp2px(Context context, float spValue) {
        DisplayMetrics displaMetrics = context.getResources().getDisplayMetrics();
        return spValue * displaMetrics.scaledDensity;
    }
}
